package main

import (
	"bytes"
	"encoding/json"
	"fmt"
	"io/ioutil"
	"net/http"
)

// 定义要发送的数据结构
type PostData struct {
	ID           int    `json:"id"`
	File         string `json:"file"`
	Token        string `json:"token"`
	WatermarkCon string `json:"watermark_con"`
	Format       string `json:"format"`
}

// 发送 POST 请求的函数
func sendPostRequest(url string, data PostData) (*http.Response, error) {
	// 将数据编码为 JSON
	jsonData, err := json.Marshal(data)
	if err != nil {
		return nil, err
	}

	// 创建请求
	request, err := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
	if err != nil {
		return nil, err
	}
	request.Header.Set("Content-Type", "application/json")

	// 发送请求
	client := &http.Client{}
	return client.Do(request)
}

func main() {
	// 定义要发送的数据
	data := PostData{
		ID:           153,
		File:         "http://47.76.169.81/1080-15s.mp4",
	//	File:         "http://172.16.0.117/1080-15s-471.mp4",
		Token:        "token_content",
		WatermarkCon: "15stest001",
		Format:       "mp4",
	}

	// 发送 POST 请求
	response, err := sendPostRequest("http://172.16.44.185/submit", data)
	if err != nil {
		fmt.Println("发送请求失败:", err)
		return
	}
	defer response.Body.Close()

	// 打印响应状态
	body, err := ioutil.ReadAll(response.Body)
	if err != nil {
		fmt.Println("读取响应体失败:", err)
		return
	}

	// 将响应体转换为字符串
	bodyString := string(body)

	// 打印响应体
	fmt.Println("响应体:", bodyString)
}
